import mssql
import config

def query(sql):
    db = mssql.ZgqMssql(config.get('db'))
    dataList = db.query(sql)
    db.close()
    return dataList
    
# 获取医疗机构信息
def getDrugList(keyword: str==None):
    sql = 'select top 10 medi_mark_id, ' + \
        'convert(nvarchar(1000),case when medi_mark.hzsb_word_len = 1 THEN \'甲\' WHEN medi_mark.hzsb_word_len = 2 THEN \'乙\' ELSE \'丙\' END + \' \' + medi_dict.name) name, ' + \
        'convert(nvarchar(1000),medi_mark.spec) spec, ' + \
        'medi_mark.resale_price,' + \
        'unit.medi_unit_id unit_id, ' + \
        'convert(nvarchar(1000),unit.name) unit_name, ' + \
        'medi_unit.medi_unit_id, ' + \
        'convert(nvarchar(1000),medi_doage) medi_doage, ' + \
        'convert(nvarchar(1000),medi_unit.name) medi_unit_name, ' + \
        'medi_pass.medi_pass, ' + \
        'convert(nvarchar(1000),medi_pass.name) medi_pass_name, ' + \
        'use_type.use_type_id, ' + \
        'convert(nvarchar(1000),use_type.name) use_type_name ' + \
        'from medi_mark, medi_dict, medi_unit unit,medi_unit medi_unit, medi_pass, use_type ' + \
        'where medi_mark.medi_id = medi_dict.medi_id ' + \
        'AND medi_mark.unit_id = unit.medi_unit_id ' + \
        'AND medi_mark.medi_unit_id = medi_unit.medi_unit_id ' + \
        'AND medi_mark.medi_pass = medi_pass.medi_pass ' + \
        'AND medi_mark.use_type_id = use_type.use_type_id '

    if (keyword):
        sql = sql + \
            'AND (spell_code LIKE \'%' + keyword + '%\' OR five_code LIKE \'%' + keyword + '%\' OR medi_dict.name LIKE \'%' + keyword + '%\')'
    list = query(sql)
    return {
        "code": 200,
        "msg": 'success',
        "data": {
            "dataList": list
        }
    }